package com.autoerp.dao.servico;

import java.util.List;

import com.autoerp.model.cliente.ClienteEntity;
import com.autoerp.model.servico.OrdemServicoEntity;



/**
 * Interface de acesso a base de dados do modulo ORDEM DE SERVIÇO Tabela tb_ordem_servico.
 */
public interface OrdemServicoDAO {
	
	/**
	 * Excluir a ordem de serviço atraves do seu identificador.
	 * 
	 * @param id_ordem_servico
	 *            identificador da ordem de servico
	 */
	public void deletar(Integer id_ordem_servico);
	
	/**
	 * Localizar a ordem de serviço atraves do seu identificador.
	 *
	 * @param id_ordem_servico identificador da ordem de serviço
	 * @return instancia da ordem de serviço
	 */
	public OrdemServicoEntity buscarPorId(Integer id_ordem_servico);
	
	/**
	 *  Localizar a ordem de serviço atraves do identificador do carro.
	 *
	 * @param id_carro_fk Identificador do carro
	 * @return instancia da ordem de serviço
	 */
	public OrdemServicoEntity  buscarPorIdCarro (Integer id_carro_fk);
	

	/**
	 * Localizar ordem de serviço
	 * 
	 * @param ordemServico
	 *            instancia da ordem de serviço
	 * @return Lista de ordem de serviço
	 */
	public List<OrdemServicoEntity> buscarOrdemServico(OrdemServicoEntity ordemServico);
	
	/**
	 * Localizar Lista de OS.
	 *
	 * @return Lista de OS
	 */
	public List<OrdemServicoEntity> buscarListaOS();
	
	
	/**
	 * Salvar a ordem de serviço no banco de dados.
	 *
	 * @param ordemServicoEntity instancia da ordem de serviço
	 */
	public void salvar(OrdemServicoEntity ordemServicoEntity);

}
